1200 |
Is it possible to display the task bars with a gradient color
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/31/2009'; LevelCount := 2; PaneWidth[False] := 96; Bars.Copy('Task','TaskO'); with Bars.Item['Task'] do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); StartColor := $ffffff; EndColor := Color; end; end; Columns.Add('Types'); with Items do begin AddBar(AddItem('Original'),'TaskO','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Pattern Gradient'),'Task','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Original'),'TaskO','1/4/2010','1/9/2010','',Nil); end; EndUpdate(); end |
1199 |
How can I know the type of bars I can displays using predefined patterns
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/31/2009'; LevelCount := 2; PaneWidth[False] := 96; with Bars do begin Add('Box').Pattern := EXG2ANTTLib.PatternEnum.exPatternBox; Add('ThickBox').Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); Add('DiagBox').Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBDiagonal); Copy('Task','Shadow').Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternFrameShadow) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); Copy('Task','TShadow').Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternFrameShadow) Or Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternDiagCross); with Add('HGrad1') do begin Pattern := EXG2ANTTLib.PatternEnum.exPatternBox; StartColor := $ffffff; EndColor := $ff0000; end; with Add('HGrad2') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); StartColor := $ffffff; EndColor := $ff0000; Color := $ff0000; end; with Add('HGrad3') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; end; with Add('HGrad4') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; end; with Add('HGrad5') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternFrameShadow) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); StartColor := $ff00; EndColor := $ff; Color := $ff0000; end; with Add('VGrad1') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); StartColor := $ffffff; EndColor := $ff0000; Height := 14; end; with Add('VGrad2') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); StartColor := $ffffff; EndColor := $ff0000; Color := $ff0000; Height := 14; end; with Add('VGrad3') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; Height := 14; end; with Add('VGrad4') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; Height := -1; end; with Add('VGrad5') do begin Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternFrameShadow) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); StartColor := $ff00; EndColor := $ff; Color := $ff0000; Height := 14; end; end; end; Columns.Add('Types'); with Items do begin AddBar(AddItem('Box'),'Box','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Thick Box'),'ThickBox','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Thick Box Diag'),'DiagBox','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Shadow'),'Shadow','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Thick Shadow'),'TShadow','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Solid Gradient'),'HGrad1','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Pattern Gradient'),'HGrad2','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Pattern Gradient 3 Colors'),'HGrad3','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Solid Gradient 3 Colors'),'HGrad4','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Gradient Shadow'),'HGrad5','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Solid Gradient'),'VGrad1','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Pattern Gradient'),'VGrad2','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Pattern Gradient 3 Colors'),'VGrad3','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Solid Gradient 3 Colors'),'VGrad4','1/4/2010','1/9/2010','',Nil); AddBar(AddItem('Gradient Shadow'),'VGrad5','1/4/2010','1/9/2010','',Nil); end; EndUpdate(); end |
1198 |
Is it possible to display the bars with a thicker border
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; Chart.Bars.Copy('Task','TaskB').Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternThickBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 2'),'TaskB','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 3'),'Task','1/2/2001','1/5/2001','',Nil); end; EndUpdate(); end |
1197 |
Is it possible to display the shadow for EBN bars
with AxG2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; with Chart.Bars.Copy('Task','EBN') do begin Color := $1000000; Pattern := EXG2ANTTLib.PatternEnum.exPatternFrameShadow; end; Chart.Bars.Copy('Task','EBN2').Color := $1000000; with Items do begin AddBar(AddItem('Task 1'),'EBN2','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 2'),'EBN','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 3'),'EBN2','1/2/2001','1/5/2001','',Nil); end; EndUpdate(); end |
1196 |
Can I display a shadow for my bars
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; Chart.Bars.Item['Task'].Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternFrameShadow) Or Integer(EXG2ANTTLib.PatternEnum.exPatternShadow); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 2'),'Task','1/2/2001','1/5/2001','',Nil); end; EndUpdate(); end |
1195 |
How can I use the Color property for gradient bars
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; with Chart.Bars.Add('V') do begin Color := $ff; StartColor := $ff00; EndColor := StartColor; Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); Height := -1; end; with Chart.Bars.Add('H') do begin Color := $ff; StartColor := $ff00; EndColor := StartColor; Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradient3Colors) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); end; with Items do begin AddBar(AddItem('Task 1'),'V','1/2/2001','1/5/2001','',Nil); AddBar(AddItem('Task 2'),'H','1/2/2001','1/5/2001','',Nil); end; EndUpdate(); end |
1194 |
Is there any option to show bars with vertical gradient
with AxG2antt1 do begin Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars.Item['Task'] do begin Color := $ff; StartColor := $ff00; EndColor := $ffff; Pattern := Integer(EXG2ANTTLib.PatternEnum.exPatternGradientVBox) Or Integer(EXG2ANTTLib.PatternEnum.exPatternBox); end; with Items do begin h := AddItem('Task'); AddBar(h,'Task','1/2/2001','1/5/2001','',Nil); end; end |
1193 |
How can I define a new milestone bar
with AxG2antt1 do begin BeginUpdate(); Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars do begin AddShapeCorner(TObject(12345),TObject(1)); AddShapeCorner(TObject(12346),TObject(2)); Copy('Milestone','M1').StartShape := EXG2ANTTLib.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconVBar) Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconRight)); Copy('Milestone','M2').StartShape := EXG2ANTTLib.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconSquare) Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconRight)); with Copy('Milestone','MP') do begin StartShape := EXG2ANTTLib.ShapeCornerEnum.exShapeIconStar; StartColor := $ff; end; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Default'),'Milestone','1/2/2001','1/2/2001',Nil,Nil); AddBar(AddItem('Predefined'),'MP','1/3/2001','1/3/2001',Nil,Nil); AddBar(AddItem('Custom 1'),'M1','1/4/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Custom 2'),'M2','1/5/2001','1/5/2001',Nil,Nil); end; EndUpdate(); end |
1192 |
How can I define my milestone bar, using my icons or pictures
with AxG2antt1 do begin Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars do begin AddShapeCorner(TObject(12345),TObject(1)); Item['Milestone'].StartShape := EXG2ANTTLib.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconVBar) Or Integer(EXG2ANTTLib.ShapeCornerEnum.exShapeIconRight)); end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Milestone','1/2/2001','1/2/2001',Nil,Nil); end; end |
1191 |
Is it possible to specify manually non-working days instead using the NonworkingDays as being repetitive
with AxG2antt1 do begin BeginUpdate(); with Chart do begin DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; FirstVisibleDate := '1/1/2010'; PaneWidth[False] := 0; LevelCount := 2; Level[0].DrawGridLines := True; ShowNonworkingUnits := False; ShowNonworkingDates := False; NonworkingDays := 0; AddNonworkingDate('1/10/2010'); AddNonworkingDate('1/11/2010'); AddNonworkingDate('1/15/2010'); AddNonworkingDate('1/16/2010'); end; EndUpdate(); end |
1190 |
Is it possible to hide specific days
with AxG2antt1 do begin BeginUpdate(); with Chart do begin DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; FirstVisibleDate := '1/1/2010'; PaneWidth[False] := 0; LevelCount := 2; Level[0].DrawGridLines := True; ShowNonworkingUnits := False; ShowNonworkingDates := False; NonworkingDays := 128; AddNonworkingDate('1/10/2010'); AddNonworkingDate('1/11/2010'); AddNonworkingDate('1/15/2010'); AddNonworkingDate('1/16/2010'); end; EndUpdate(); end |
1189 |
Is it possible to show or display the marked zones ONLY in the overview part of the control
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; FirstVisibleDate := '1/14/2001'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/3/2001','1/4/2001',TObject(BackColor),';;Zone <b>1</b>'); MarkTimeZone('Z2','2/6/2001','2/7/2001',TObject(BackColor),';;Zone <b>2</b>'); MarkTimeZone('Z3','1/16/2001','1/19/2001',TObject(BackColor),';;Zone <b>3</b>'); OverviewShowMarkTimeZones := True; OverviewBackColor := $f0f0dc; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/5/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','2/5/2001','2/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1188 |
Is it possible to show or display the marked zones in the overview part of the control
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; FirstVisibleDate := '1/14/2001'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/3/2001','1/4/2001',TObject(16777056),Nil); MarkTimeZone('Z2','2/6/2001','2/7/2001',TObject(16744544),Nil); MarkTimeZone('Z3','1/16/2001','1/19/2001',TObject(16744544),Nil); OverviewShowMarkTimeZones := True; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/5/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','2/5/2001','2/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1187 |
Is there a quick way to determine if a bar belongs to a group
with AxG2antt1 do begin Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 64; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/7/2001','K2',Nil); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/5/2001','1/7/2001','K3',Nil); GroupBars(h1,'K1',True,h2,'K2',True,Nil,Nil); GroupBars(h1,'K1',False,h2,'K2',False,Nil,Nil); GroupBars(h1,'K1',True,h3,'K3',True,Nil,Nil); GroupBars(h1,'K1',False,h3,'K3',False,Nil,Nil); OutputDebugString( ItemBar[h1,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarsGroup] ); end; end |
1186 |
I am using the ScrollRange property to limit the chart's visible area, but it does not work as expected. What could be wrong
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; PaneWidth[False] := 56; ScrollRange[EXG2ANTTLib.ScrollRangeEnum.exStartDate] := '1/1/100'; ScrollRange[EXG2ANTTLib.ScrollRangeEnum.exEndDate] := '12/31/9999'; FirstVisibleDate := '4/28/2010'; end; set_ScrollPartCaption(EXG2ANTTLib.ScrollBarEnum.exHChartScroll,EXG2ANTTLib.ScrollPartEnum.exLowerBackPart,Chart.ScrollRange[EXG2ANTTLib.ScrollRangeEnum.exStartDate]); set_ScrollPartCaptionAlignment(EXG2ANTTLib.ScrollBarEnum.exHChartScroll,EXG2ANTTLib.ScrollPartEnum.exLowerBackPart,EXG2ANTTLib.AlignmentEnum.LeftAlignment); set_ScrollPartCaption(EXG2ANTTLib.ScrollBarEnum.exHChartScroll,EXG2ANTTLib.ScrollPartEnum.exUpperBackPart,Chart.ScrollRange[EXG2ANTTLib.ScrollRangeEnum.exEndDate]); set_ScrollPartCaptionAlignment(EXG2ANTTLib.ScrollBarEnum.exHChartScroll,EXG2ANTTLib.ScrollPartEnum.exUpperBackPart,EXG2ANTTLib.AlignmentEnum.RightAlignment); EndUpdate(); end |
1185 |
Are you planning to add a AddNonworkingDate / AddNonworkingDay for separate items
with AxG2antt1 do begin BeginUpdate(); AllowChartScrollPage := True; Columns.Add('Non-Work'); with Chart do begin FirstVisibleDate := '4/4/2009'; PaneWidth[False] := 52; LevelCount := 2; end; with Items do begin AddItem('Default'); ItemNonworkingUnits[AddItem('Test 1'),TObject(False)] := 'shortdate(value) in (#4/5/2009#,#4/6/2009#)'; ItemNonworkingUnits[AddItem('Test 2'),TObject(False)] := 'shortdate(value) in (#4/6/2009#,#4/7/2009#)'; ItemNonworkingUnits[AddItem('Test 3'),TObject(False)] := 'shortdate(value) in (#4/7/2009#,#4/9/2009#)'; AddItem('Default'); end; EndUpdate(); end |
1184 |
How can I enlarge the EBN being applied to an object
with AxG2antt1 do begin BeginUpdate(); DefaultItemHeight := 32; with VisualAppearance do begin Add(2,'c:\exontrol\images\normal.ebn'); Add(1,'CP:2 -3 -2 3 2'); end; with Chart do begin FirstVisibleDate := '1/1/2002'; SelBarColor := $1000000; PaneWidth[False] := 48; end; Columns.Add('Task'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2002','1/4/2002','A',Nil); AddBar(h,'Task','1/6/2002','1/10/2002','B',Nil); AddBar(h,'Task','1/11/2002','1/14/2002','C',Nil); ItemBar[h,'A',EXG2ANTTLib.ItemBarPropertyEnum.exBarSelected] := TObject(True); ItemBar[h,'B',EXG2ANTTLib.ItemBarPropertyEnum.exBarSelected] := TObject(True); end; EndUpdate(); end |
1183 |
I am using EBN to display my bars but the bars shows in black in the overview area. Is there any option to specify a different color in the overview part of the control
with AxG2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); with Chart do begin Bars.Item['Task'].Color := $1000000; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; FirstVisibleDate := '1/11/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',TObject(1),Nil); ItemBar[h,TObject(1),EXG2ANTTLib.ItemBarPropertyEnum.exBarOverviewColor] := TObject(8821418); AddBar(h,'Task','2/2/2001','2/4/2001',TObject(2),Nil); ItemBar[h,TObject(2),EXG2ANTTLib.ItemBarPropertyEnum.exBarOverviewColor] := TObject(8821418); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Nil); ItemBar[h,'',EXG2ANTTLib.ItemBarPropertyEnum.exBarOverviewColor] := TObject(8821418); end; EndUpdate(); end |
1182 |
I haven't found options to localize (in Italian) the strings ( dates, tooltip ) that shows in the chart area
with AxG2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib.UnitEnum.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib.UnitEnum.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib.UnitEnum.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib.WeekDayEnum.exMonday; MonthNames := 'gennaio febbraio marzo aprile maggio giugno luglio agosto settembre ottobre novembre dicembre'; WeekDays := 'domenica lunedì martedì mercoledì giovedì venerdì sabato'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib.UnitEnum.exDay; end; EndUpdate(); end |
1181 |
I haven't found options to localize (in Dutch) the strings ( dates, tooltip ) that shows in the chart area
with AxG2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib.UnitEnum.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib.UnitEnum.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib.UnitEnum.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib.WeekDayEnum.exMonday; MonthNames := 'januari februari maart april mei juni juli augusts september oktober november december'; WeekDays := 'zondag maandag dinsdag woensdag donderdag vrijdag zaterdag'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib.UnitEnum.exDay; end; EndUpdate(); end |
1180 |
I haven't found options to localize (in German) the strings ( dates, tooltip ) that shows in the chart area (method 1)
with AxG2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib.UnitEnum.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%>.<%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib.UnitEnum.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%>.<%m3%> ''<%yy%><|><%dddd%> <%d%>.<%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib.UnitEnum.exWeek] := '<%d%>.<%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exDay] := '<%dddd%>, <%d%>.<%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib.WeekDayEnum.exMonday; MonthNames := 'Januar Februar März April Mai Juni Juli August September Oktober November Dezember'; WeekDays := 'Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag'; ToolTip := '<%dddd%>,<%d%>.<%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib.UnitEnum.exDay; end; EndUpdate(); end |
1179 |
I haven't found options to localize (in French) the strings ( dates, tooltip ) that shows in the chart area
with AxG2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib.UnitEnum.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib.UnitEnum.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib.UnitEnum.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib.WeekDayEnum.exMonday; MonthNames := 'janvier février mars avril mai juin juillet août septembre octobre novembre décembre'; WeekDays := 'dimanche lundi mardi mercredi jeudi vendredi samedi'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib.UnitEnum.exDay; end; EndUpdate(); end |
1178 |
How can I determine the last visible date in the chart
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( 'First' ); OutputDebugString( Chart.FirstVisibleDate ); OutputDebugString( 'Last' ); OutputDebugString( Chart.DateFromPoint[1,-1] ); end end; with AxG2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 1; end; EndUpdate(); end |
1177 |
How can I filter programatically using more columns
with AxG2antt1 do begin BeginUpdate(); Chart.PaneWidth[True] := 0; MarkSearchColumn := False; with Columns do begin Add('Car'); Add('Equipment'); end; with Items do begin CellValue[TObject(AddItem('Mazda')),TObject(1)] := 'Air Bag'; CellValue[TObject(AddItem('Toyota')),TObject(1)] := 'Air Bag,Air condition'; CellValue[TObject(AddItem('Ford')),TObject(1)] := 'Air condition'; CellValue[TObject(AddItem('Nissan')),TObject(1)] := 'Air Bag,ABS,ESP'; CellValue[TObject(AddItem('Mazda')),TObject(1)] := 'Air Bag, ABS,ESP'; CellValue[TObject(AddItem('Mazda')),TObject(1)] := 'ABS,ESP'; end; with Columns.Item['Car'] do begin FilterType := EXG2ANTTLib.FilterTypeEnum.exFilter; Filter := 'Mazda'; end; with Columns.Item['Equipment'] do begin FilterType := EXG2ANTTLib.FilterTypeEnum.exPattern; Filter := '*ABS*|*ESP*'; end; ApplyFilter(); EndUpdate(); end |
1176 |
Do you have scheduling functionality in Gantt (meaning scheduling several activities (bars) depending on their start and finish dates with considering dependencies to other activities
// BarResize event - Occurs when a bar is moved or resized. procedure TWinForm1.AxG2antt1_BarResize(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_BarResizeEvent); begin with AxG2antt1 do begin Items.SchedulePDM(e.item,TObject(e.key)); end end; with AxG2antt1 do begin BeginUpdate(); Items.AllowCellValueToItemBar := True; Columns.Add('Task'); (Columns.Add('Working') as EXG2ANTTLib.Column).Def[EXG2ANTTLib.DefColumnEnum.exCellValueToItemBarProperty] := TObject(258); with Chart do begin Bars.Add('Task:Split').Shortcut := 'Task'; FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 96; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/2/2001','1/4/2001','',Nil); AddLink('L1',h1,'',h2,''); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/2/2001','1/6/2001','',Nil); AddLink('L2',h2,'',h3,''); Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkText] := 'FF'; Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkStartPos] := TObject(2); Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkEndPos] := TObject(2); h4 := AddItem('Task 4'); AddBar(h4,'Task','1/2/2001','1/4/2001','',Nil); AddLink('L3',h4,'',h3,''); ItemBar[0,'<*>',EXG2ANTTLib.ItemBarPropertyEnum.exBarKeepWorkingCount] := TObject(True); SchedulePDM(FirstVisibleItem,''); end; EndUpdate(); end |
1175 |
How can I show the ticks for a single slider field
with AxG2antt1 do begin BeginUpdate(); (Columns.Add('Slider') as EXG2ANTTLib.Column).Editor.EditType := EXG2ANTTLib.EditTypeEnum.SliderType; with Items do begin AddItem(TObject(10)); with CellEditor[TObject(AddItem(TObject(20))),TObject(0)] do begin EditType := EXG2ANTTLib.EditTypeEnum.SliderType; Option[EXG2ANTTLib.EditorOptionEnum.exSliderTickFrequency] := TObject(10); end; AddItem(TObject(30)); end; EndUpdate(); end |
1174 |
Is it possible to show ticks for slider fields
with AxG2antt1 do begin with (Columns.Add('Slider') as EXG2ANTTLib.Column).Editor do begin EditType := EXG2ANTTLib.EditTypeEnum.SliderType; Option[EXG2ANTTLib.EditorOptionEnum.exSliderTickFrequency] := TObject(10); end; Items.AddItem(TObject(10)); end |
1173 |
How can I group two bars so the distance between them is limited to a specified range
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Nil,Nil); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/25/2006','9/28/2006',Nil,Nil); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,TObject(31),'1;2'); OutputDebugString( 'The distance between A and B is limited between 1 and 3 days' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1172 |
How can I group two bars so the distance between them is flexible but never less than a specified value
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Nil,Nil); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006',Nil,Nil); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,TObject(39),'2'); OutputDebugString( 'The distance between A and B is never less than 2 days' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1171 |
How can I group two bars so the distance between them is flexible
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Nil,Nil); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006',Nil,Nil); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,TObject(39),Nil); OutputDebugString( 'The distance between A and B is flexible, unlimited' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1170 |
How can I group two bars so the interval between them is fixed
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','9/21/2006','9/24/2006','T1','A'); AddBar(h,'Unknown','9/26/2006','9/29/2006','T2','B'); AddLink('L',h,'T1',h,'T2'); Link['L',EXG2ANTTLib.LinkPropertyEnum.exLinkGroupBars] := TObject(27); Link['L',EXG2ANTTLib.LinkPropertyEnum.exLinkShowDir] := TObject(False); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006','T2','B'); AddLink('L2',h,'T1',h2,'T2'); Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkGroupBars] := TObject(27); Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkShowDir] := TObject(False); OutputDebugString( 'The distance between bars is constant' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1169 |
How can I group two bars when linking, so moving the first bar will makes the second to move accordingly
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006','','A'); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006','','B'); AddLink('L1',h1,'',h2,''); Link['L1',EXG2ANTTLib.LinkPropertyEnum.exLinkGroupBars] := TObject(39); OutputDebugString( 'The distance between A and B is flexible, unlimited' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1168 |
Is it possible to be notified when the user clicks an anchor element a hyperlink in the date-time zone
// AnchorClick event - Occurs when an anchor element is clicked. procedure TWinForm1.AxG2antt1_AnchorClick(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_AnchorClickEvent); begin with AxG2antt1 do begin OutputDebugString( 'Click: ' ); OutputDebugString( e.anchorID ); end end; with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/2/2001','1/5/2001',TObject(15753471),';32;Caption <a1><b>1</b></a>;1;Caption <a2><b>2</b></a>;17;Caption <a3><b>3</b></a>'); end; EndUpdate(); end |
1167 |
Is it possible to be notified when the user clicks a date-time zone
|
1166 |
Is is possible to display multiple captions in the same date-time zone
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',TObject(12895487),';;Caption <b>1</b>;1;Caption <b>2</b>;17;Caption <b>3</b>'); end; EndUpdate(); end |
1165 |
Is is possible to align on the top the caption for the date-time zone
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',TObject(12895487),';;UpperCenter;1'); end; EndUpdate(); end |
1164 |
Is there any option to display a picture on the date-time zone
with AxG2antt1 do begin BeginUpdate(); set_HTMLPicture('pic1','c:\exontrol\images\card.png'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',TObject(12895487),';;<c><img>pic1</img><br><c>picture'); end; EndUpdate(); end |
1163 |
Is there any option to display a text or a HTML caption on the date-time zone
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z1','1/1/2001','1/4/2001',TObject(12895487),';;zone <b>1</b>'); MarkTimeZone('Z2','1/5/2001','1/8/2001',TObject(12895487),';;zone <b>2</b>'); end; EndUpdate(); end |
1162 |
How can I display the date-time zone using a semi-transparent EBN object
with AxG2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',TObject(16777056),';;Solid'); MarkTimeZone('Z2','1/7/2001','1/10/2001',TObject(16777216),'50;;EBN'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1161 |
How can I display the date-time zone using an EBN or a skin instead a solid color
with AxG2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',TObject(16777056),';;Solid'); MarkTimeZone('Z2','1/5/2001','1/8/2001',TObject(16777216),';;EBN'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1160 |
How can I display the date-time zone using a pattern instead a solid color
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',TObject(16777056),';;Solid'); MarkTimeZone('Z2','1/6/2001','1/7/2001',TObject(16777056),';12;Pattern'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1159 |
How can I display the date-time zone using a transparent color
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',TObject(16777056),';;Opaque'); MarkTimeZone('Z2','1/6/2001','1/7/2001',TObject(16777056),'50;;Semi-Transparent'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1158 |
The date time zone is shown behind the bars, is there any way to show it over
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib.PatternEnum.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',TObject(16777056),Nil); MarkTimeZone('Z2','1/6/2001','1/7/2001',TObject(16777056),'1'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1157 |
How can I get ifnromation about a date-time zone
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin with Chart do begin OutputDebugString( TimeZoneInfo[TimeZoneFromPoint[-1,-1]] ); end; end end; with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',TObject(16744544),Nil); MarkTimeZone('Z2','1/12/2010','1/18/2010',TObject(16761952),Nil); end; end |
1156 |
How can I determine the zone from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin with Chart do begin OutputDebugString( TimeZoneFromPoint[-1,-1] ); end; end end; with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',TObject(16744544),Nil); MarkTimeZone('Z2','1/12/2010','1/18/2010',TObject(16761952),Nil); end; end |
1155 |
How can I highlight multiple date-time zones (ranges)
with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',TObject(16744544),Nil); MarkTimeZone('Z2','1/12/2010','1/18/2010',TObject(16761952),Nil); end; end |
1154 |
How can I highlight a date-time range
with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',TObject(16744544),Nil); end; end |
1153 |
How do I get the list of selected date
|
1152 |
Is there any function I can use to find the bars that intersect with the current bar
// BarResizing event - Occurs when a bar is moving or resizing. procedure TWinForm1.AxG2antt1_BarResizing(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_BarResizingEvent); begin with AxG2antt1 do begin with Items do begin OutputDebugString( e.key ); OutputDebugString( 'intesect with' ); OutputDebugString( ItemBar[e.item,TObject(e.key),EXG2ANTTLib.ItemBarPropertyEnum.exBarIntersectWithAsString] ); end; end end; with AxG2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Item['Task'].OverlaidType := EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset; ResizeUnitScale := EXG2ANTTLib.UnitEnum.exHour; AllowCreateBar := EXG2ANTTLib.CreateBarEnum.exCreateBarAuto; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1','A1'); AddBar(h1,'Task','1/3/2001','1/5/2001','A2','A2'); AddBar(h1,'Task','1/4/2001','1/7/2001','A3','A3'); end; EndUpdate(); end |
1151 |
Is it possible to order the bars on top of other bars
with AxG2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Nil); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Nil); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Nil); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Nil); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Nil); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Nil); GroupBars(h1,'A1',True,h2,'A1',True,Nil,Nil); GroupBars(h1,'A1',False,h2,'A1',False,Nil,Nil); GroupBars(h1,'A2',True,h2,'A2',True,Nil,Nil); GroupBars(h1,'A2',False,h2,'A2',False,Nil,Nil); GroupBars(h1,'A3',True,h2,'A3',True,Nil,Nil); GroupBars(h1,'A3',False,h2,'A3',False,Nil,Nil); end; EndUpdate(); end |
1150 |
Is it possible to order the bars on top of other bars (have different colurs so that they can be seen)
with AxG2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib.GridLinesEnum.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsStackAutoArrange) Or Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsStack); end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Nil); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Nil); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Nil); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Nil); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Nil); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Nil); GroupBars(h1,'A1',True,h2,'A1',True,Nil,Nil); GroupBars(h1,'A1',False,h2,'A1',False,Nil,Nil); GroupBars(h1,'A2',True,h2,'A2',True,Nil,Nil); GroupBars(h1,'A2',False,h2,'A2',False,Nil,Nil); GroupBars(h1,'A3',True,h2,'A3',True,Nil,Nil); GroupBars(h1,'A3',False,h2,'A3',False,Nil,Nil); end; EndUpdate(); end |
1149 |
Is it possible to layer bars on top of other bars (have different colurs so that they can be seen)
with AxG2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Nil); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Nil); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Nil); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Nil); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Nil); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Nil); GroupBars(h1,'A1',True,h2,'A1',True,Nil,Nil); GroupBars(h1,'A1',False,h2,'A1',False,Nil,Nil); GroupBars(h1,'A2',True,h2,'A2',True,Nil,Nil); GroupBars(h1,'A2',False,h2,'A2',False,Nil,Nil); GroupBars(h1,'A3',True,h2,'A3',True,Nil,Nil); GroupBars(h1,'A3',False,h2,'A3',False,Nil,Nil); end; EndUpdate(); end |
1148 |
My skin(EBN) bars are not shown a different color in the overview. What can I do
with AxG2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); with Chart do begin Bars.Item['Task'].Color := $1000000; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; FirstVisibleDate := '1/11/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',TObject(1),Nil); AddBar(h,'Task','2/2/2001','2/4/2001',TObject(2),Nil); ItemBar[h,TObject(2),EXG2ANTTLib.ItemBarPropertyEnum.exBarColor] := TObject(16776960); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Nil); ItemBar[h,'',EXG2ANTTLib.ItemBarPropertyEnum.exBarColor] := TObject(255); end; EndUpdate(); end |
1147 |
How do I colour the lines in the overview section to match the bars they represent on the main chart
with AxG2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; FirstVisibleDate := '1/1/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',TObject(1),Nil); AddBar(h,'Task','2/2/2001','2/4/2001',TObject(2),Nil); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Nil); ItemBar[h,'',EXG2ANTTLib.ItemBarPropertyEnum.exBarColor] := TObject(255); end; EndUpdate(); end |
1146 |
How do I catch the delete key (down) on a bar
// KeyDown event - Occurs when the user presses a key while an object has the focus. procedure TWinForm1.AxG2antt1_KeyDownEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_KeyDownEvent); begin with AxG2antt1 do begin OutputDebugString( e.keyCode ); OutputDebugString( e.shift ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/27/2000'; LevelCount := 2; PaneWidth[False] := 48; with Bars.Item['Task'] do begin Pattern := EXG2ANTTLib.PatternEnum.exPatternBox; Height := 13; end; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that is not clipped'); h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that get''s clipped'); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(3); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarToolTip] := ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption]; end; EndUpdate(); end |
1145 |
Is it possible to colour a particular column, I mean the cell's foreground color
with AxG2antt1 do begin BeginUpdate(); with ConditionalFormats.Add('1',Nil) do begin ForeColor := $ff; ApplyTo := EXG2ANTTLib.FormatApplyToEnum($1); end; MarkSearchColumn := False; with Columns do begin Add('Column 1'); Add('Column 2'); end; with Items do begin CellValue[TObject(AddItem(TObject(0))),TObject(1)] := TObject(1); CellValue[TObject(AddItem(TObject(2))),TObject(1)] := TObject(3); CellValue[TObject(AddItem(TObject(4))),TObject(1)] := TObject(5); end; EndUpdate(); end |
1144 |
Is it possible to colour a particular column for specified values
with AxG2antt1 do begin BeginUpdate(); with ConditionalFormats.Add('int(%1) in (3,4,5)',Nil) do begin BackColor := $ff; ApplyTo := EXG2ANTTLib.FormatApplyToEnum($1); end; MarkSearchColumn := False; with Columns do begin Add('Column 1'); Add('Column 2'); end; with Items do begin CellValue[TObject(AddItem(TObject(0))),TObject(1)] := TObject(1); CellValue[TObject(AddItem(TObject(2))),TObject(1)] := TObject(3); CellValue[TObject(AddItem(TObject(4))),TObject(1)] := TObject(5); end; EndUpdate(); end |
1143 |
Is it possible to colour a particular column
with AxG2antt1 do begin BeginUpdate(); MarkSearchColumn := False; with Columns do begin Add('Column 1'); (Add('Column 2') as EXG2ANTTLib.Column).Def[EXG2ANTTLib.DefColumnEnum.exCellBackColor] := TObject(255); end; with Items do begin CellValue[TObject(AddItem(TObject(0))),TObject(1)] := TObject(1); CellValue[TObject(AddItem(TObject(2))),TObject(1)] := TObject(3); CellValue[TObject(AddItem(TObject(4))),TObject(1)] := TObject(5); end; EndUpdate(); end |
1142 |
How do i get all the children items that are under a certain parent Item handle
with AxG2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib.LinesAtRootEnum.exLinesAtRoot; Columns.Add('P'); with Items do begin h := AddItem('Root'); InsertItem(h,Nil,'Child 1'); InsertItem(h,Nil,'Child 2'); ExpandItem[h] := True; end; with Items do begin hChild := ItemChild[FirstVisibleItem]; OutputDebugString( CellValue[TObject(hChild),TObject(0)] ); OutputDebugString( CellValue[TObject(NextSiblingItem[hChild]),TObject(0)] ); end; EndUpdate(); end |
1141 |
How can I access the control's scroll bar so I can change its appearance
with AxG2antt1 do begin BeginUpdate(); Chart.PaneWidth[False] := 0; VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); set_Background(EXG2ANTTLib.BackgroundPartEnum.exHSThumb,$1000000); EndUpdate(); end |
1140 |
How can I show my bars using the parts of the current theme
with AxG2antt1 do begin BeginUpdate(); with VisualAppearance do begin Add(1,'XP:Button 1 1'); Add(2,'XP:Button 1 2'); Add(3,'XP:ScrollBar 3 1'); Add(4,'XP:ScrollBar 3 2'); end; with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '1/1/2001'; with Bars do begin Add('B1').Color := $1000000; Add('B2').Color := $2000000; Add('S1').Color := $3000000; Add('S2').Color := $4000000; end; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Button1'),'B1','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Button 2'),'B2','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Scrollbar 1'),'S1','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Scrollbar 2'),'S2','1/2/2001','1/4/2001',Nil,Nil); end; EndUpdate(); end |
1139 |
How do I hide the text on a bar if the text is to big for the bar length
with AxG2antt1 do begin Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/27/2000'; LevelCount := 2; PaneWidth[False] := 48; with Bars.Item['Task'] do begin Pattern := EXG2ANTTLib.PatternEnum.exPatternBox; Height := 13; end; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that is not clipped'); h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that get''s clipped'); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(3); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarToolTip] := ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption]; end; end |
1138 |
Is it possible to change the color for non-working parts of the bar
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; PaneWidth[False] := 48; FirstVisibleDate := '1/1/2001'; Bars.Add('Task:Split').Shortcut := 'Task'; NonworkingDaysColor := $f0faf0; end; with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/16/2001',Nil,Nil); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/16/2001','',Nil); ItemBar[h,'',EXG2ANTTLib.ItemBarPropertyEnum.exBarNonWorkingColor] := TObject(65280); end; EndUpdate(); end |
1137 |
Is it possible to change the color for the percent bar being displayed inside a specified bar only
with AxG2antt1 do begin Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.Bars.Add('Task%Progress'); Chart.PaneWidth[False] := 48; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task%Progress','1/2/2001','1/6/2001','K1',Nil); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarPercent] := TObject(0.4); h := AddItem('Task 2'); AddBar(h,'Task%Progress','1/2/2001','1/6/2001','K1',Nil); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarPercent] := TObject(0.5); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarPercentColor] := TObject(255); end; end |
1136 |
How do I get a handle on the item before adding the bar
with AxG2antt1 do begin BeginUpdate(); MarkSearchColumn := False; OnResizeControl := EXG2ANTTLib.OnResizeControlEnum.exResizeChart; Columns.Add('Tasks'); (Columns.Add('Start') as EXG2ANTTLib.Column).Visible := False; (Columns.Add('End') as EXG2ANTTLib.Column).Visible := False; with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 0'); CellValue[TObject(h1),TObject(1)] := '9/21/2006'; CellValue[TObject(h1),TObject(2)] := '9/24/2006'; AddBar(h1,'Task',CellValue[TObject(h1),TObject(1)],CellValue[TObject(h1),TObject(2)],Nil,Nil); h2 := InsertItem(h,Nil,'Task 1'); CellValue[TObject(h2),TObject(1)] := '9/25/2006'; CellValue[TObject(h2),TObject(2)] := '9/28/2006'; AddBar(h2,'Task',CellValue[TObject(h2),TObject(1)],CellValue[TObject(h2),TObject(2)],Nil,Nil); h3 := InsertItem(h,Nil,'Task 2'); CellValue[TObject(h3),TObject(1)] := '9/29/2006'; CellValue[TObject(h3),TObject(2)] := '10/2/2006'; AddBar(h3,'Task',CellValue[TObject(h3),TObject(1)],CellValue[TObject(h3),TObject(2)],Nil,Nil); AddItem(TObject(ItemCount)); end; EndUpdate(); end |
1135 |
Is there an Items method that I can use to loop around to compare the item's user data against
with AxG2antt1 do begin Columns.Add('Default'); with Items do begin h := AddItem('Root 1'); InsertItem(h,Nil,'Child 1'); ItemData[InsertItem(h,Nil,'Child 2')] := TObject(1234); ExpandItem[h] := True; ItemBold[FindItemData[TObject(1234),Nil]] := True; end; end |
1134 |
How do I make the tooltip box wider to allow for longer text
with AxG2antt1 do begin ToolTipWidth := 328; Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001','K1',Nil); ItemBar[h,'K1',EXG2ANTTLib.ItemBarPropertyEnum.exBarToolTip] := 'This is a bit of text that''s displayed when the cursor hovers the bar'; end; end |
1133 |
How do i set the default timeslots to say hours or minutes
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib.OverviewZoomEnum.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|Mo|T|W|D|H|Mi|S'; UnitScale := EXG2ANTTLib.UnitEnum.exMinute; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Nil,Nil); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Nil,Nil); end; EndUpdate(); end |
1132 |
Can I use icons or images in the text in the overview zoom buttons (Sec., Min., Hour, Month...)
with AxG2antt1 do begin BeginUpdate(); set_HTMLPicture('pic1','c:\exontrol\images\zipdisk.gif'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib.OverviewZoomEnum.exAlwaysZoom; OverviewZoomUnit := 24; OverviewHeight := 58; OverviewZoomCaption := 'Y<br>e<br>a<br>r|½Y|¼Y|M<br>o<br>n<br>t<br>h|T|W<br>e<br>e<br>w|<img>pic1:28<img>|H<br>o<br>u<br>r|M<br>i<br>n|S<br>e<br>c'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Nil,Nil); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Nil,Nil); end; EndUpdate(); end |
1131 |
Can I use icons or images in the text in the overview zoom buttons (Sec., Min., Hour, Month...)
with AxG2antt1 do begin BeginUpdate(); Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib.OverviewZoomEnum.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|<img>2<img>|T|W|<img>1<img>|H|M|S'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Nil,Nil); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Nil,Nil); end; EndUpdate(); end |
1130 |
How do I change (for localisation) the text in the buttons like (Sec., Min., Hour, Month...)
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib.OverviewZoomEnum.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|Mo|T|W|D|H|Mi|S'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Nil,Nil); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Nil,Nil); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Nil,Nil); end; EndUpdate(); end |
1129 |
How I can change the Months and Weekdays
with AxG2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 0; FirstVisibleDate := '2/1/2010'; LevelCount := 2; UnitWidth := 10; MonthNames := '1 2 3 4 5 6 7 8 9 10 11 12'; WeekDays := 'A B C D E F G'; with Level[0] do begin Label := '<%mmmm%>'; Unit := EXG2ANTTLib.UnitEnum.exMonth; end; with Level[1] do begin Label := '<font ;6><%ddd%>'; Unit := EXG2ANTTLib.UnitEnum.exDay; end; end; EndUpdate(); end |
1128 |
How do i get the current window time frame (the start and end) of the gantt chart
// DateChange event - Occurs when the first visible date is changed. procedure TWinForm1.AxG2antt1_DateChange(sender: System.Object; e: System.EventArgs); begin with AxG2antt1 do begin with Chart do begin OutputDebugString( 'Start' ); OutputDebugString( FirstVisibleDate ); OutputDebugString( '' ); OutputDebugString( 'End' ); OutputDebugString( DateFromPoint[PaneWidth[True],0] ); end; end end; with AxG2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 1; LevelCount := 2; ScrollTo('1/1/2010',TObject(0)); end; EndUpdate(); end |
1127 |
When I use this Chart.get_DateFromPoint(exg2antt1.Width, 0) I get date as 0, 30/12/1899, or 12:00:00 AM. What that means
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.DateFromPoint[-1,-1] ); end end; with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 48; LevelCount := 2; end; end |
1126 |
How do I enable grabing bars to other items/rows (and only enable them to be dropped on certain rows)
// BarParentChange event - Occurs just before moving a bar from current item to another item. procedure TWinForm1.AxG2antt1_BarParentChange(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_BarParentChangeEvent); begin with AxG2antt1 do begin OutputDebugString( Items.CellCaption[TObject(e.newItem),TObject(0)] ); e.cancel := Items.ItemData[e.newItem]; end end; with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; AllowLinkBars := False; Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset); end; Columns.Add('Column'); with Items do begin h := AddItem('Item 1'); EnableItem[h] := False; ItemData[h] := TObject(-1); h := AddItem('Item 2'); ItemData[h] := TObject(0); AddBar(h,'Task','1/5/2001','1/7/2001','B',Nil); ItemBar[h,'B',EXG2ANTTLib.ItemBarPropertyEnum.exBarCanMoveToAnother] := TObject(True); ItemData[AddItem('Item 3')] := TObject(0); h := AddItem('Item 4'); EnableItem[h] := False; ItemData[h] := TObject(-1); end; EndUpdate(); end |
1125 |
How can I find out if a date time is a non-working part
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin h := get_ItemFromPoint(-1,-1,c,hit); d := Chart.DateFromPoint[-1,-1]; OutputDebugString( d ); OutputDebugString( Chart.IsNonworkingDate[TObject(d),TObject(h)] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('NonWorking'); with Chart do begin FirstWeekDay := EXG2ANTTLib.WeekDayEnum.exMonday; FirstVisibleDate := '1/24/2008'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h := AddItem('Default'); h := AddItem('January'); ItemNonworkingUnits[h,TObject(False)] := 'month(value) = 1'; h := AddItem('February, Saturday, Sunday'); ItemNonworkingUnits[h,TObject(False)] := 'month(value) = 2 or (weekday(value) = 0 or weekday(value) = 6)'; h := AddItem('Sunday'); ItemNonworkingUnits[h,TObject(False)] := 'weekday(value) = 0'; end; EndUpdate(); end |
1124 |
I am using the ItemBar property exBarCanMoveToAnother, How do I stop it from being dropped on certain chart rows
// BarParentChange event - Occurs just before moving a bar from current item to another item. procedure TWinForm1.AxG2antt1_BarParentChange(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_BarParentChangeEvent); begin with AxG2antt1 do begin OutputDebugString( Items.CellCaption[TObject(e.newItem),TObject(0)] ); e.cancel := Items.ItemData[e.newItem]; end end; with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; AllowLinkBars := False; Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset); end; Columns.Add('Column'); with Items do begin h := AddItem('Item 1'); EnableItem[h] := False; ItemData[h] := TObject(-1); h := AddItem('Item 2'); ItemData[h] := TObject(0); AddBar(h,'Task','1/5/2001','1/7/2001','B',Nil); ItemBar[h,'B',EXG2ANTTLib.ItemBarPropertyEnum.exBarCanMoveToAnother] := TObject(True); ItemData[AddItem('Item 3')] := TObject(0); ItemData[AddItem('Item 4')] := TObject(0); end; EndUpdate(); end |
1123 |
What is the event I should use to capture the click event on the task item on left hand side
// Click event - Occurs when the user presses and then releases the left mouse button over the tree control. procedure TWinForm1.AxG2antt1_ClickEvent(sender: System.Object; e: System.EventArgs); begin with AxG2antt1 do begin h := get_ItemFromPoint(-1,-1,c,hit); OutputDebugString( Items.CellCaption[TObject(h),TObject(c)] ); end end; with AxG2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib.LinesAtRootEnum.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Nil,'Cell 1.1'); InsertItem(h,Nil,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Nil,'Cell 2.1'); InsertItem(h,Nil,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1122 |
Can I add a hyperlink assigned to a bar
// AnchorClick event - Occurs when an anchor element is clicked. procedure TWinForm1.AxG2antt1_AnchorClick(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_AnchorClickEvent); begin with AxG2antt1 do begin OutputDebugString( e.anchorID ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := '<a1><b>A 1</b></a>'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 3'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := '<a2><b>A 2</b></a>'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); end; EndUpdate(); end |
1121 |
Can I change the background color only for the text (caption) in a bar
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'using <bgcolor=FF0000>bgcolor</bgcolor> HTML attribute '; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); end; EndUpdate(); end |
1120 |
Can I change the font to display the text (caption) in a bar
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := '<font Segoe UI;8 >using font HTML attribute </fgcolor>'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); end; EndUpdate(); end |
1119 |
How do i change the forecolor of text (caption) in a bar
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := '<fgcolor=FF0000>using fgcolor HTML attribute </fgcolor>'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); h := AddItem('Task 3'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Nil); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarCaption] := 'using exBarForeColor'; ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarHAlignCaption] := TObject(18); ItemBar[h,'K',EXG2ANTTLib.ItemBarPropertyEnum.exBarForeColor] := TObject(65280); end; EndUpdate(); end |
1118 |
I have noticed that when scrolling horizontally the chart a tooltip shown. is it possible to actually do the scrolling without showing the tooltip
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; ToolTip := ''; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','A',Nil); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','B',Nil); end; EndUpdate(); end |
1117 |
How can I add a bar to be treated as a nonworking part like a "holidays" bar
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; Bars.Add('Task:Split').Shortcut := 'Task'; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,TObject(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/2/2001','1/5/2001','A','holyday'); ItemBar[h,'A',EXG2ANTTLib.ItemBarPropertyEnum.exBarTreatAsNonworking] := TObject(True); AddBar(h,'Task','1/5/2001','1/12/2001','Z',Nil); ItemBar[h,'Z',EXG2ANTTLib.ItemBarPropertyEnum.exBarKeepWorkingCount] := TObject(True); end; EndUpdate(); end |
1116 |
Is it possible to add bars that act like a non-working fixed part or the item
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,TObject(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/3/2001','1/6/2001','h','holyday'); ItemBar[h,'h',EXG2ANTTLib.ItemBarPropertyEnum.exBarTreatAsNonworking] := TObject(True); ItemBar[h,'h',EXG2ANTTLib.ItemBarPropertyEnum.exBarSelectable] := TObject(False); end; EndUpdate(); end |
1115 |
Is it possible to add bars that act like a non-working part or the item
with AxG2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,TObject(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/3/2001','1/6/2001','h','holyday'); ItemBar[h,'h',EXG2ANTTLib.ItemBarPropertyEnum.exBarTreatAsNonworking] := TObject(True); end; EndUpdate(); end |
1114 |
How can I change the both dates for the bar at once
with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin PaneWidth[False] := 64; FirstVisibleDate := '6/21/2005'; ShowEmptyBars := 1; end; with Items do begin h := AddItem('Test'); AddBar(h,'Task','6/22/2005','6/26/2005','',Nil); AddBar(h,'Task','6/27/2005','6/29/2005',Nil,Nil); end; EndUpdate(); end |
1113 |
How can I get the selected bars in the chart
// ChartSelectionChanged event - Occurs when the user selects objects in the chart area. procedure TWinForm1.AxG2antt1_ChartSelectionChanged(sender: System.Object; e: System.EventArgs); begin with AxG2antt1 do begin OutputDebugString( Items.SelectedObjects[EXG2ANTTLib.SelectObjectsEnum.exSelectBarsOnly] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','A',Nil); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','B',Nil); ItemBar[FirstVisibleItem,FirstItemBar[FirstVisibleItem],EXG2ANTTLib.ItemBarPropertyEnum.exBarSelected] := TObject(True); end; EndUpdate(); end |
1112 |
How can I list the actions that can be performed by undo operations
// ChartEndChanging event - Occurs after the chart has been changed. procedure TWinForm1.AxG2antt1_ChartEndChanging(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_ChartEndChangingEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.UndoListAction[Nil,Nil] ); end end; with AxG2antt1 do begin BeginUpdate(); Chart.FirstVisibleDate := '1/1/2001'; Chart.AllowLinkBars := False; Chart.Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib.OverlaidBarsTypeEnum.exOverlaidBarsOffset); Chart.AllowUndoRedo := True; Chart.PaneWidth[False] := 32; Chart.Bars.Add('Task:Split').Shortcut := 'Task'; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001','A',Nil); h := AddItem('Item 2'); AddBar(h,'Task','1/5/2001','1/9/2001','B',Nil); ItemBar[h,'B',EXG2ANTTLib.ItemBarPropertyEnum.exBarCanMoveToAnother] := TObject(True); ItemBar[h,'B',EXG2ANTTLib.ItemBarPropertyEnum.exBarKeepWorkingCount] := TObject(True); ItemNonworkingUnits[AddItem('Item 3'),TObject(False)] := 'weekday(value)=0'; ItemNonworkingUnits[AddItem('Item 4'),TObject(False)] := 'weekday(value) in (3,5)'; end; EndUpdate(); end |
1111 |
How can I change the predefined labels being displayed in the chart's header so it shows the data in short format with no literals
with AxG2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 0; AllowOverviewZoom := EXG2ANTTLib.OverviewZoomEnum.exAlwaysZoom; OverviewVisible := EXG2ANTTLib.OverviewVisibleEnum.exOverviewShowAllVisible; LevelCount := 3; Label[EXG2ANTTLib.UnitEnum.exYear] := '<%yy%><|><%yyyy%>'; Label[EXG2ANTTLib.UnitEnum.exHalfYear] := ''; Label[EXG2ANTTLib.UnitEnum.exQuarterYear] := ''; Label[EXG2ANTTLib.UnitEnum.exMonth] := '<|><%m%><|><%m%>/<%yy%><|><%m%>/<%yyyy%>'; Label[EXG2ANTTLib.UnitEnum.exThirdMonth] := ''; Label[EXG2ANTTLib.UnitEnum.exWeek] := '<|><%ww%><|><%m%>/<%d%>/<%yy%><r><%ww%><|><%m%>/<%d%>/<%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib.UnitEnum.exDay] := '<|><%d%><|><%m%>/<%d%>/<%yy%><|><%m%>/<%d%>/<%yyyy%><||><||>4096'; Label[EXG2ANTTLib.UnitEnum.exHour] := '<|><%hh%><|><%m%>/<%d%>/<%yy%> <%h%> <%AM/PM%><|><%m%>/<%d%>/<%yyyy%> <%h%> <%AM/PM%><||><||>65536'; Label[EXG2ANTTLib.UnitEnum.exMinute] := '<|><%nn%><|><%h%>:<%nn% <%AM/PM%>><|><%m%>/<%d%>/<%yy%> <%h%>:<%nn%> <%AM/PM%><|><%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%> <%AM/PM%>'; Label[EXG2ANTTLib.UnitEnum.exSecond] := '<|><%ss%><|><%nn%>:<%ss%><|><%h%>:<%nn%>:<%ss%> <%AM/PM%><|><%m%>/<%d%>/<%yy%> <%h%>:<%nn%>:<%ss%> <%AM/PM%><|><%m%>/<%d%>/<%yyy' + 'y%> <%h%>:<%nn%>:<%ss%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exYear] := '<%yyyy%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exHalfYear] := ''; LabelToolTip[EXG2ANTTLib.UnitEnum.exQuarterYear] := ''; LabelToolTip[EXG2ANTTLib.UnitEnum.exMonth] := '<%m%>/<%yyyy%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exThirdMonth] := ''; LabelToolTip[EXG2ANTTLib.UnitEnum.exWeek] := '<%m%>/<%d%>/<%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exDay] := '<%m%>/<%d%>/<%yyyy%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exHour] := '<%m%>/<%d%>/<%yyyy%> <%h%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exMinute] := '<%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib.UnitEnum.exSecond] := '<%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%>:<%ss%> <%AM/PM%>'; UnitScale := EXG2ANTTLib.UnitEnum.exDay; end; EndUpdate(); end |
1110 |
The histogram does not show (correctly) the bars, even if I changed the Bar.HistogramPattern and Bar.HistogramColor properties. What can be wrong
with AxG2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '12/27/2000'; HistogramVisible := True; HistogramHeight := 32; with Bars.Item['Task'] do begin HistogramPattern := EXG2ANTTLib.PatternEnum.exPatternBDiagonal; HistogramColor := $ff; end; ResizeUnitScale := EXG2ANTTLib.UnitEnum.exHour; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001 8:00:00 AM','1/2/2001 12:00:00 PM',Nil,Nil); AddBar(AddItem('Task 2'),'Task','1/1/2001 8:00:00 AM','1/5/2001 12:00:00 PM',Nil,Nil); end; EndUpdate(); end |
1109 |
How can I change the default key for the newly added link from "Link1" to my identifier
// AddLink event - Occurs when the user links two bars using the mouse. procedure TWinForm1.AxG2antt1_AddLink(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_AddLinkEvent); begin with AxG2antt1 do begin with Items do begin AddLink('newIDlink',Link[TObject(e.linkKey),EXG2ANTTLib.LinkPropertyEnum.exLinkStartItem],Link[TObject(e.linkKey),EXG2ANTTLib.LinkPropertyEnum.exLinkStartBar],Link[TObject(e.linkKey),EXG2ANTTLib.LinkPropertyEnum.exLinkEndItem],Link[TObject(e.linkKey),EXG2ANTTLib.LinkPropertyEnum.exLinkEndBar]); RemoveLink(TObject(e.linkKey)); end; end end; // MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','',Nil); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','',Nil); end; EndUpdate(); end |
1108 |
How can I change the default key for the newly added link from "Link1" to my identifier
// AllowLink event - Notifies at runtime when a link between two bars is possible. procedure TWinForm1.AxG2antt1_AllowLink(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_AllowLinkEvent); begin with AxG2antt1 do begin e.linkKey := 'newIDlink'; end end; // MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','',Nil); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','',Nil); end; EndUpdate(); end |
1107 |
We want to have a Task ID column as the first column that shows the row number. How can we do that
// FormatColumn event - Fired when a cell requires to format its caption. procedure TWinForm1.AxG2antt1_FormatColumn(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_FormatColumnEvent); begin with AxG2antt1 do begin e.value := Items.ItemPosition[e.item]; end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with (Columns.Add('Pos') as EXG2ANTTLib.Column) do begin Width := 24; AllowSizing := False; Position := 0; FireFormatColumn := True; end; with Items do begin AddItem('Task A'); AddItem('Task B'); AddItem('Task C'); AddItem('Task D'); end; EndUpdate(); end |
1106 |
How can I get the caption of focused item
// SelectionChanged event - Fired after a new item has been selected. procedure TWinForm1.AxG2antt1_SelectionChanged(sender: System.Object; e: System.EventArgs); begin with AxG2antt1 do begin with Items do begin OutputDebugString( 'Handle' ); OutputDebugString( FocusItem ); OutputDebugString( 'Caption' ); OutputDebugString( CellCaption[TObject(FocusItem),TObject(0)] ); end; end end; with AxG2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib.LinesAtRootEnum.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Nil,'Cell 1.1'); InsertItem(h,Nil,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Nil,'Cell 2.1'); InsertItem(h,Nil,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1105 |
How can I get the caption of selected item
// SelectionChanged event - Fired after a new item has been selected. procedure TWinForm1.AxG2antt1_SelectionChanged(sender: System.Object; e: System.EventArgs); begin with AxG2antt1 do begin with Items do begin OutputDebugString( 'Handle' ); OutputDebugString( SelectedItem[0] ); OutputDebugString( 'Caption' ); OutputDebugString( CellCaption[TObject(SelectedItem[0]),TObject(0)] ); end; end end; with AxG2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib.LinesAtRootEnum.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Nil,'Cell 1.1'); InsertItem(h,Nil,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Nil,'Cell 2.1'); InsertItem(h,Nil,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1104 |
How can I get the link from the point
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/29/2000'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/7/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); Link['L1',EXG2ANTTLib.LinkPropertyEnum.exLinkText] := 'L1'; h3 := AddItem('Task 3'); AddBar(h3,'Task','1/8/2001','1/10/2001','K3',Nil); AddLink('L2',h2,'K2',h3,'K3'); Link['L2',EXG2ANTTLib.LinkPropertyEnum.exLinkText] := 'L2'; end; EndUpdate(); end |
1103 |
How can I get the bar from the point
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.BarFromPoint[-1,-1] ); end end; with AxG2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/29/2000'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Nil); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/4/2001','1/6/2001','K2',Nil); AddLink('L1',h1,'K1',h2,'K2'); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/8/2001','1/10/2001','K3',Nil); AddLink('L2',h2,'K2',h3,'K3'); end; EndUpdate(); end |
1102 |
How can I get the level from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.LevelFromPoint[-1,-1] ); end end; with AxG2antt1 do begin with Chart do begin FirstVisibleDate := '6/25/2010'; PaneWidth[False] := 0; LevelCount := 4; end; end |
1101 |
How can I get the date from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TWinForm1.AxG2antt1_MouseMoveEvent(sender: System.Object; e: AxEXG2ANTTLib._IG2anttEvents_MouseMoveEvent); begin with AxG2antt1 do begin OutputDebugString( Chart.DateFromPoint[-1,-1] ); end end; with AxG2antt1 do begin with Chart do begin PaneWidth[False] := 0; LevelCount := 2; end; end |